﻿using System;
using Eamon.MeituanDotnetSDK.api.common;
using Eamon.MeituanDotnetSDK.api.common.request;
using Eamon.MeituanDotnetSDK.api.common.response;

namespace Eamon.MeituanDotnetSDK.httpclient
{
    public interface IOpenAPIClient : IDisposable
    {
        Task<string> execute(IAPI api);
        Task<T> InvokeAsync<T>(IAPI api);

        Task<MeituanResponse<T>> InvokeApiAsync<T>(IMeituanRequest<T> request, string appAuthToken);
    }
}
